import axios from "axios";

//基础读
const axiosr = axios.create({
    baseURL:'http://101.201.170.32:8888/T5',
    timeout:10000
})

//基础读
const axiosrmedical = axios.create({
    baseURL:'http://101.201.170.32:8888/T7',
    timeout:10000
})



//新医疗接口
const axiosrnewmedical = axios.create({
    baseURL:'http://localhost:5115/api',
    timeout:10000
})


// 添加请求拦截器
axiosr.interceptors.request.use(function (config) {
    // 数据提交后端要加入新的Token值
        config.headers["Authorization"] =
            "Bearer " + localStorage.getItem("token");
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    console.error('请求拦截器错误:', error);
    return Promise.reject(error);
  });

// 添加响应拦截器
axiosr.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    return response;
  }, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    console.error('响应错误:', error);
    return Promise.reject(error);
  });


  // 添加请求拦截器
axiosrmedical.interceptors.request.use(function (config) {
    console.log('发送请求:', config.url, config.params);
    // 数据提交后端要加入新的Token值
    config.headers["Authorization"] =
        "Bearer " + localStorage.getItem("token");
    // 允许跨域
    config.headers["Access-Control-Allow-Origin"] = "*";
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    console.error('医疗请求拦截器错误:', error);
    return Promise.reject(error);
  });

// 添加响应拦截器
axiosrmedical.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    console.log('接口响应成功:', response.config.url, response.status);
    return response;
  }, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    if (error.response) {
      // 服务器响应了，但状态码不在 2xx 范围内
      console.error('响应错误状态:', error.response.status);
      console.error('响应错误数据:', error.response.data);
      console.error('响应错误头部:', error.response.headers);
    } else if (error.request) {
      // 请求已发送但没有收到响应
      console.error('未收到响应:', error.request);
    } else {
      // 发送请求时出现问题
      console.error('请求错误:', error.message);
    }
    console.error('完整错误配置:', error.config);
    return Promise.reject(error);
  });

export {axiosr,axiosrmedical,axiosrnewmedical}